package com.geek.javase.ch10.jformdesigntest.event;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

/*
 *@author wangpeng
 *2025/10/19 15:40
 *@description
 * 需求1：给窗体的x按钮，添加事件，点击后关闭所有资源（窗体）
 * 需求2：点击按钮，将按钮上的内容，设置给输入框JTextField
 *
 * 触发事件
 * 1.事件源:窗体X按钮
 * 2.事件类型：窗体关闭事件
 * 3.事件监听器：windowListener
 * 4.触发事件后：关闭所有资源（窗体）
 */
public class EventDemo2 extends JFrame {
    public EventDemo2() {
        this.setTitle("这是一个事件案例");
        this.setSize(300, 400);
        this.setLocationRelativeTo(null);
        this.setResizable(false);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        //获取容器
        Container container = this.getContentPane();
        container.setLayout(new BorderLayout());

        //文本框
        JTextField textField = new JTextField();
        textField.setSize(260,150);
        //按钮
        JButton btn = new JButton("点击此处！");
        btn.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                String text = btn.getText();
                JOptionPane.showMessageDialog(EventDemo2.this,text);
                textField.setText(text);
            }
        });
        container.add(textField, BorderLayout.CENTER);
        container.add(btn, BorderLayout.SOUTH);

    }

    public static void main(String[] args) {
        new EventDemo2().setVisible(true);
    }

}
